using System;

/// <summary>
/// Summary description for UserProfile
/// </summary>
/// 
namespace CE.Template
{
    public class Template
    {
        public Template()
        {
            //
            // TODO: Add constructor logic here
            //
            ClearFields();
        }

        //common field name
        private bool _status;
        private DateTime _createddate;
        private DateTime _modifieddate;

        //extra field for future extend
        private string _info1;
        private string _info2;
        private string _info3;
        private string _info4;
        private string _info5;
        private Int64 _ninfo1;
        private Int32 _ninfo2;
        private float _finfo1;
        private float _finfo2;
        private DateTime _dinfo1;

        public bool Status
        {
            get { return _status; }
            set { _status = value; }
        }
        
        public DateTime CreatedDate
        {
            get { return _createddate; }
            set { _createddate = value; }
        }

        public DateTime ModifiedDate
        {
            get { return _modifieddate; }
            set { _modifieddate = value; }
        }

        public string Info1
        {
            get { return _info1; }
            set { _info1 = value; }
        }

        public string Info2
        {
            get { return _info2; }
            set { _info2 = value; }
        }

        public string Info3
        {
            get { return _info3; }
            set { _info3 = value; }
        }

        public string Info4
        {
            get { return _info4; }
            set { _info4 = value; }
        }

        public string Info5
        {
            get { return _info5; }
            set { _info5 = value; }
        }

        public Int64 NInfo1
        {
            get { return _ninfo1; }
            set { _ninfo1 = value; }
        }

        public Int32 NInfo2
        {
            get { return _ninfo2; }
            set { _ninfo2 = value; }
        }


        public float FInfo1
        {
            get { return _finfo1; }
            set { _finfo1 = value; }
        }

        public float FInfo2
        {
            get { return _finfo2; }
            set { _finfo2 = value; }
        }

        public DateTime DInfo1
        {
            get { return _dinfo1; }
            set { _dinfo1 = value; }
        }

        public void ClearFields()
        {
            //common field name
            _status = false;
            _createddate = new DateTime();
            _modifieddate = new DateTime();

            //extra field for future extend
            _info1 = "";
            _info2 = "";
            _info3 = "";
            _info4 = "";
            _info5 = "";
            _ninfo1 = 0;
            _ninfo2 = 0;
            _finfo1 = 0.0f;
            _finfo2 = 0.0f;
            _dinfo1 = new DateTime();
        }
    }
}
